Interoperating Logic Engines
نویسندگان
چکیده
We introduce a new programming language construct, Interactors, supporting the agent-oriented view that programming is a dialog between simple, self-contained, autonomous building blocks. We define Interactors as an abstraction of answer generation and refinement in Logic Engines resulting in expressive language extension and metaprogramming patterns. As a first step toward a declarative semantics, we sketch a pure Prolog specification showing that Interactors can be expressed at source level, in a relatively simple and natural way. Interactors extend language constructs like Ruby, Python and C#’s multiple coroutining block returns through yield statements and they can emulate the action of fold operations and monadic constructs in functional languages. Using the Interactor API, we describe at source level, language extensions like dynamic databases and algorithms involving generation of infinite answer streams.
منابع مشابه
A methodology and tool suite for evaluation of accuracy of interoperating statistical natural language processing engines
Evaluation of accuracy of natural language processing (NLP) engines plays an important role in their development and improvement. Such evaluation usually takes place at a per-engine level. For example, there are evaluation methods for engines such as speech recognition, machine translation, story boundary detection, etc. Many real-world applications require combinations of these functions. This...
متن کاملA data format enabling interoperation of speech recognition, translation and information extraction engines: the GALE type system
Live interoperation of several speechand text-processing engines is key to tasks such as real-time cross-language story segmentation, topic clustering, and captioning of video. One requirement for interoperation is a common data format shared across engines, so that the output of one can be understood as the input of another. The GALE Type System has been created to serve this purpose for inter...
متن کاملViola: A Verifier For Interoperating Components
Two or more components (e.g., objects, modules, or programs) interoperate when they exchange data, such as XML data. Currently, there is no approach that can detect a situation at compile time when one component modifies XML data so that it becomes incompatible for use by other components, delaying discovery of errors to runtime. Our solution, a Verifier for Interoperating cOmponents for findin...
متن کاملWhen Does It Pay Off to Use Sophisticated Entailment Engines in ILP?
Entailment is an important problem in computational logic particularly relevant to the Inductive Logic Programming (ILP) community as it is at the core of the hypothesis coverage test which is often the bottleneck of an ILP system. Despite developments in resolution heuristics and, more recently, in subsumption engines, most ILP systems simply use Prolog’s left-to-right, depth-first search sele...
متن کاملBuilding a fuzzy logic based tool for e-readiness measurement
Firstly, this paper presents fuzzy logic based approaches for building a tool for measuring ereadiness of a country. This paper proposes fuzzy logic for realizing the measuring tool as fuzzy logic allows processing of heterogeneous indicators and imprecise values assigned for them. The tool is constructed by using one or more fuzzy logic based inference engines. Secondly, due to the problems in...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2009